
package ru.oscar.icq.constants;

import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;

public class MetaCountryConstants {
    
    public static final int UNSPECIFIED = 0;
    public static final int OTHER = 9999;
    public static final int AFGANISTAN = 93;
    public static final int ALBANIA = 355;
    public static final int ALGERIA = 213;
    public static final int AMERICAN_SAMOA = 684;
    public static final int ANDORRA = 376;
    public static final int ANGOLA = 244;
    public static final int ANGUILLA = 101;
    public static final int ANTIGUA_AND_BARBUDA = 102;
    public static final int ANTILLES = 5902;
    public static final int ARGENTINA = 54;
    public static final int ARMENIA = 374;
    public static final int ARUBA = 297;
    public static final int ASCENSION_ISLAND = 247;
    public static final int AUSTRALIA = 61;
    public static final int AUSTRIA = 43;
    public static final int AZERBAIJAN = 994;
    public static final int BAHAMAS = 103;
    public static final int BAHRAIN = 973;
    public static final int BANGLADESH = 880;
    public static final int BARBADOS = 104;
    public static final int BARBUDA = 120;
    public static final int BELARUS = 375;
    public static final int BELGIUM = 32;
    public static final int BELIZE = 501;
    public static final int BENIN = 229;
    public static final int BERMUDA = 105;
    public static final int BHUTAN = 975;
    public static final int BOLIVIA = 591;
    public static final int BOSNIA = 387;
    public static final int BOTSWANA = 267;
    public static final int BRAZIL = 55;
    public static final int BRITISH_VIRGIN_ISLANDS = 106;
    public static final int BRUNEI = 673;
    public static final int BULGARIA = 359;
    public static final int BURKINA_FASO = 226;
    public static final int BURUNDI = 257;
    public static final int CAMBODIA = 855;
    public static final int CAMEROON = 237;
    public static final int CANADA = 107;
    public static final int CANARY_ISLANDS = 178;
    public static final int CAPE_VERDE_ISLANDS = 238;
    public static final int CAYMAN_ISLANDS = 108;
    public static final int CENTRAL_AFRICAN_REPUBLIC = 236;
    public static final int CHAD = 235;
    public static final int CHILE = 56;
    public static final int CHINA = 86;
    public static final int CHRISTMAS_ISLAND = 672;
    public static final int COCOS_KEELING_ISLANDS = 6101;
    public static final int COCOS_ISLANDS = 6102;
    public static final int COLOMBIA = 57;
    public static final int COMOROS = 2691;
    public static final int CONGO_ZAIRE = 243;
    public static final int CONGO = 242;
    public static final int COOK_ISLANDS = 682;
    public static final int COSTA_RICA = 506;
    public static final int COTE_D_IVOIRE = 225;
    public static final int CROATIA = 385;
    public static final int CUBA = 53;
    public static final int CYPRUS = 357;
    public static final int CZECH_REPUBLIC = 420;
    public static final int DENMARK = 45;
    public static final int DIEGO_CARCIA = 246;
    public static final int DJIBOUTI = 253;
    public static final int DOMINICA = 109;
    public static final int DOMINICAN_REPUBLIC = 110;
    public static final int ECUADOR = 593;
    public static final int EGYPT = 20;
    public static final int EL_SALVADOR = 503;
    public static final int EQUATORIAL_GUINEA = 240;
    public static final int ERITREA = 291;
    public static final int ESTONIA = 372;
    public static final int ETHIOPIA = 251;
    public static final int FAEROE_ISLANDS = 298;
    public static final int FALKLAND_ISLANDS = 500;
    public static final int FIJI = 679;
    public static final int FINLAND = 358;
    public static final int FRANCE = 33;
    public static final int FRENCH_ANTILLES = 5901;
    public static final int FRENCH_GUIANA = 594;
    public static final int FRENCH_POLYNESIA = 689;
    public static final int GABON = 241;
    public static final int GAMBIA = 220;
    public static final int GEORGIA = 995;
    public static final int GERMANY = 49;
    public static final int GHANA = 233;
    public static final int GIBRALTAR = 350;
    public static final int GREECE = 30;
    public static final int GREENLAND = 299;
    public static final int GRENADA = 111;
    public static final int GUADELOURE = 590;
    public static final int GUAM = 671;
    public static final int GUATEMALA = 502;
    public static final int GUINEA = 224;
    public static final int GUINEA_BISSAU = 245;
    public static final int GUYANA = 592;
    public static final int HAITI = 509;
    public static final int HONDURAS = 504;
    public static final int HONG_KONG = 858;
    public static final int HUNGARY = 36;
    public static final int ICELANG = 354;
    public static final int INDIA = 91;
    public static final int INDONESIA = 62;
    public static final int IRAN = 98;
    public static final int IRAQ = 964;
    public static final int IRELAND = 353;
    public static final int ISRAEL = 972;
    public static final int ITALY = 39;
    public static final int JAMAICA = 112;
    public static final int JAPAN = 81;
    public static final int JORDAN = 962;
    public static final int KAZAKHSTAN = 705;
    public static final int KENIA = 254;
    public static final int KIRIBATI = 686;
    public static final int KOREA_NORTH = 850;
    public static final int KOREA_SOUTH = 82;
    public static final int KUWAIT = 965;
    public static final int KYRGYZSTAN = 706;
    public static final int LAOS = 856;
    public static final int LATVIA = 371;
    public static final int LEBANON = 961;
    public static final int LESOTHO = 266;
    public static final int LIBERIA = 231;
    public static final int LIBYAN = 218;
    public static final int LIECHTENSTEIN = 4101;
    public static final int LITHUANIA = 370;
    public static final int LUXEMBOURG = 352;
    public static final int MACAU = 853;
    public static final int MACEDONIA = 389;
    public static final int MADAGASCAR = 261;
    public static final int MALAWI = 265;
    public static final int MALAYSIA = 60;
    public static final int MALDIVES = 960;
    public static final int MALI = 223;
    public static final int MALTA = 356;
    public static final int MARSHALI_ISLANDS = 692;
    public static final int MARTINIQUE = 596;
    public static final int MAURITANIA = 222;
    public static final int MAURITIUS = 230;
    public static final int MAYOTTE_ISLAND = 269;
    public static final int MEXICO = 52;
    public static final int MICRONESIA = 691;
    public static final int MOLDOVA = 373;
    public static final int MONACO = 377;
    public static final int MONGOLIA = 976;
    public static final int MONTSERRAT = 113;
    public static final int MOROCCO = 212;
    public static final int MOZAMBIQUE = 258;
    public static final int MYANMAR = 95;
    public static final int NAMIBIA = 264;
    public static final int NAURU = 674;
    public static final int NEPAL = 977;
    public static final int NETHERLANDS = 31;
    public static final int NETHERLANDS_ANTILLES = 599;
    public static final int NEVIS = 114;
    public static final int NEW_CALEDONIA = 687;
    public static final int NEW_ZEALAND = 64;
    public static final int NICARAGUA = 509;
    public static final int NIGER = 227;
    public static final int NIGERIA = 234;
    public static final int NIUE = 683;
    public static final int NORFOLK_ISLAND = 6722;
    public static final int NORWAY = 47;
    public static final int OMAN = 968;
    public static final int PAKISTAN = 92;
    public static final int PALAU = 680;
    public static final int PANAMA = 507;
    public static final int PAPUA_NEW_GUINEA = 675;
    public static final int PARAQUAY = 595;
    public static final int PERU = 51;
    public static final int PHILIPPINES = 63;
    public static final int POLAND = 48;
    public static final int PORTUGAL = 351;
    public static final int PUERTO_RICO = 121;
    public static final int QATAR = 974;
    public static final int REUNION_ISLAND = 262;
    public static final int ROMANIA = 40;
    public static final int ROTA_ISLAND = 6701;
    public static final int RUSSIA = 7;
    public static final int RWANDA = 250;
    public static final int SAINT_HELENA = 290;
    public static final int SAINT_KITTS = 115;
    public static final int SAINT_KITTS_AND_NEVIS = 1141;
    public static final int SAINT_LUCIA = 122;
    public static final int SAINT_PIERRE_AND_MIQUELON = 508;
    public static final int SAINT_VINCENT = 116;
    public static final int SAIPAN_ISLAND = 670;
    public static final int SAN_MARINO = 378;
    public static final int SAO_TOME_AND_PRINCIPE = 239;
    public static final int SAUDI_ARABIA = 966;
    public static final int SCOTLAND = 442;
    public static final int SENEGAL = 221;
    public static final int SEYCHELLES = 248;
    public static final int SIERRA_LEONE = 232;
    public static final int SINGAPORE = 65;
    public static final int SLOVAKIA = 421;
    public static final int SLOVENIA = 386;
    public static final int SOLOMON_ISLANDS = 677;
    public static final int SOMALIA = 252;
    public static final int SOUTH_AFRICA = 27;
    public static final int SPAIN = 34;
    public static final int SRI_LANKA = 94;
    public static final int SUDAN = 249;
    public static final int SURINAME = 597;
    public static final int SWAZILAND = 268;
    public static final int SWEDEN = 46;
    public static final int SWITZERLAND = 41;
    public static final int SYRIAN_ARAB_REPUBLIC = 963;
    public static final int TAIWAN = 886;
    public static final int TAJIKISTAN = 708;
    public static final int TANZANIA = 255;
    public static final int THAILAND = 66;
    public static final int TINIAN_ISLAND = 6702;
    public static final int TOGO = 228;
    public static final int TOKELAU = 690;
    public static final int TONGA = 676;
    public static final int TRINIDAD_AND_TOBAGO = 117;
    public static final int TUNISIA = 216;
    public static final int TURKEY = 90;
    public static final int TURKMENISTAN = 709;
    public static final int TURKS_AND_CAICOS_ISLANDS = 118;
    public static final int TUVALU = 688;
    public static final int UGANDA = 256;
    public static final int UKRAIN = 380;
    public static final int UNITED_ARAB_EMIRATES = 971;
    public static final int UNITED_KINGDOM = 44;
    public static final int URUGUAY = 598;
    public static final int USA = 1;
    public static final int UZBEKISTAN = 711;
    public static final int VANUATU = 678;
    public static final int VATICAN_CITY = 379;
    public static final int VENEZUELA = 58;
    public static final int VIETNAM = 84;
    public static final int VIRGIN_ISLANDS = 123;
    public static final int WALES = 441;
    public static final int WALLIS_AND_FUTUNA_ISLANDS = 681;
    public static final int WESTERN_SAMOA = 685;
    public static final int YEMEN = 967;
    public static final int YUGOSLAVIA = 381;
    public static final int YUGOSLAVIA_SERBIA = 3811;
    public static final int YUGOSLAVIA_MONTENEGRO = 382;
    public static final int ZAMBIA = 260;
    public static final int ZIMBABWE = 263;

    private static HashMap<Integer, String> map = new HashMap<Integer, String>();

    static {
        map.put(UNSPECIFIED, "Unspecified");
        map.put(OTHER, "Other");
        map.put(AFGANISTAN, "Afghanistan");
        map.put(ALBANIA, "Albania");
        map.put(ALGERIA, "Algeria");
        map.put(AMERICAN_SAMOA, "American Samoa");
        map.put(ANDORRA, "Andorra");
        map.put(ANGOLA, "Angola");
        map.put(ANGUILLA, "Anguilla");
        map.put(ANTIGUA_AND_BARBUDA, "Antigua and Barbuda");
        map.put(ANTILLES, "Antilles");
        map.put(ARGENTINA, "Argentina");
        map.put(ARMENIA, "Armenia");
        map.put(ARUBA, "Aruba");
        map.put(ASCENSION_ISLAND, "Ascension Island");
        map.put(AUSTRALIA, "Australia");
        map.put(AUSTRIA, "Austria");
        map.put(AZERBAIJAN, "Azerbaijan");
        map.put(BAHAMAS, "Bahamas");
        map.put(BAHRAIN, "Bahrain");
        map.put(BANGLADESH, "Bangladesh");
        map.put(BARBADOS, "Barbados");
        map.put(BARBUDA, "Barbuda");
        map.put(BELARUS, "Belarus");
        map.put(BELGIUM, "Belgium");
        map.put(BELIZE, "Belize");
        map.put(BENIN, "Benin");
        map.put(BERMUDA, "Bermuda");
        map.put(BHUTAN, "Bhutan");
        map.put(BOLIVIA, "Bolivia");
        map.put(BOSNIA, "Bosnia and Herzegovina");
        map.put(BOTSWANA, "Botswana");
        map.put(BRAZIL, "Brazil");
        map.put(BRITISH_VIRGIN_ISLANDS, "British Virgin Islands");
        map.put(BRUNEI, "Brunei");
        map.put(BULGARIA, "Bulgaria");
        map.put(BURKINA_FASO, "Burkina Faso");
        map.put(BURUNDI, "Burundi");
        map.put(CAMBODIA, "Cambodia");
        map.put(CAMEROON, "Cameroon");
        map.put(CANADA, "Canada");
        map.put(CANARY_ISLANDS, "Canary Islands");
        map.put(CAPE_VERDE_ISLANDS, "Cape Verde Islands");
        map.put(CAYMAN_ISLANDS, "Cayman Islands");
        map.put(CENTRAL_AFRICAN_REPUBLIC, "Central African Republic");
        map.put(CHAD, "Chad");
        map.put(CHILE, "Chile, Republic of");
        map.put(CHINA, "China");
        map.put(CHRISTMAS_ISLAND, "Christmas Island");
        map.put(COCOS_KEELING_ISLANDS, "Cocos-Keeling Islands");
        map.put(COCOS_ISLANDS, "Cocos (Keeling) Islands");
        map.put(COLOMBIA, "Colombia");
        map.put(COMOROS, "Comoros");
        map.put(CONGO_ZAIRE, "Congo, Democratic Republic of (Zaire)");
        map.put(CONGO, "Congo, Republic of the");
        map.put(COOK_ISLANDS, "Cook Islands");
        map.put(COSTA_RICA, "Costa Rica");
        map.put(COTE_D_IVOIRE, "Cote d'Ivoire (Ivory Coast)");
        map.put(CROATIA, "Croatia");
        map.put(CUBA , "Cuba");
        map.put(CYPRUS, "Cyprus");
        map.put(CZECH_REPUBLIC, "Czech Republic");
        map.put(DENMARK, "Denmark");
        map.put(DIEGO_CARCIA, "Diego Garcia");
        map.put(DJIBOUTI, "Djibouti");
        map.put(DOMINICA, "Dominica");
        map.put(DOMINICAN_REPUBLIC, "Dominican Republic");
        map.put(ECUADOR, "Ecuador");
        map.put(EGYPT, "Egypt");
        map.put(EL_SALVADOR, "El Salvador");
        map.put(EQUATORIAL_GUINEA, "Equatorial Guinea");
        map.put(ERITREA, "Eritrea");
        map.put(ESTONIA, "Estonia");
        map.put(ETHIOPIA, "Ethiopia");
        map.put(FAEROE_ISLANDS, "Faeroe Islands");
        map.put(FALKLAND_ISLANDS, "Falkland Islands");
        map.put(FIJI, "Fiji");
        map.put(FINLAND, "Finland");
        map.put(FRANCE, "France");
        map.put(FRENCH_ANTILLES, "French Antilles");
        map.put(FRENCH_GUIANA, "French Guiana");
        map.put(FRENCH_POLYNESIA, "French Polynesia");
        map.put(GABON, "Gabon");
        map.put(GAMBIA, "Gambia");
        map.put(GEORGIA, "Georgia");
        map.put(GERMANY, "Germany");
        map.put(GHANA, "Ghana");
        map.put(GIBRALTAR, "Gibraltar");
        map.put(GREECE, "Greece");
        map.put(GREENLAND, "Greenland");
        map.put(GRENADA, "Grenada");
        map.put(GUADELOURE, "Guadeloupe");
        map.put(GUAM, "Guam, US Territory of");
        map.put(GUATEMALA, "Guatemala");
        map.put(GUINEA, "Guinea");
        map.put(GUINEA_BISSAU, "Guinea-Bissau");
        map.put(GUYANA, "Guyana");
        map.put(HAITI, "Haiti");
        map.put(HONDURAS, "Honduras");
        map.put(HONG_KONG, "Hong Kong");
        map.put(HUNGARY, "Hungary");
        map.put(ICELANG, "Iceland");
        map.put(INDIA, "India");
        map.put(INDONESIA, "Indonesia");
        map.put(IRAN, "Iran allCountries.put(Islamic Republic of)");
        map.put(IRAQ, "Iraq");
        map.put(IRELAND, "Ireland");
        map.put(ISRAEL, "Israel");
        map.put(ITALY, "Italy");
        map.put(JAMAICA, "Jamaica");
        map.put(JAPAN, "Japan");
        map.put(JORDAN, "Jordan");
        map.put(KAZAKHSTAN, "Kazakhstan");
        map.put(KENIA, "Kenya");
        map.put(KIRIBATI, "Kiribati");
        map.put(KOREA_NORTH, "Korea, North");
        map.put(KOREA_SOUTH, "Korea, South");
        map.put(KUWAIT, "Kuwait");
        map.put(KYRGYZSTAN, "Kyrgyzstan");
        map.put(LAOS, "Laos");
        map.put(LATVIA, "Latvia");
        map.put(LEBANON, "Lebanon");
        map.put(LESOTHO, "Lesotho");
        map.put(LIBERIA, "Liberia");
        map.put(LIBYAN, "Libyan Arab Jamahiriya");
        map.put(LIECHTENSTEIN, "Liechtenstein");
        map.put(LITHUANIA, "Lithuania");
        map.put(LUXEMBOURG, "Luxembourg");
        map.put(MACAU, "Macau");
        map.put(MACEDONIA, "Macedonia (F.Y.R.O.M.)");
        map.put(MADAGASCAR, "Madagascar");
        map.put(MALAWI, "Malawi");
        map.put(MALAYSIA, "Malaysia");
        map.put(MALDIVES, "Maldives");
        map.put(MALI, "Mali");
        map.put(MALTA, "Malta");
        map.put(MARSHALI_ISLANDS, "Marshall Islands");
        map.put(MARTINIQUE, "Martinique");
        map.put(MAURITANIA, "Mauritania");
        map.put(MAURITIUS, "Mauritius");
        map.put(MAYOTTE_ISLAND, "Mayotte Island");
        map.put(MEXICO, "Mexico");
        map.put(MICRONESIA, "Micronesia, Federated States of");
        map.put(MOLDOVA, "Moldova, Republic of");
        map.put(MONACO, "Monaco");
        map.put(MONGOLIA, "Mongolia");
        map.put(MONTSERRAT, "Montserrat");
        map.put(MOROCCO, "Morocco");
        map.put(MOZAMBIQUE, "Mozambique");
        map.put(MYANMAR, "Myanmar");
        map.put(NAMIBIA, "Namibia");
        map.put(NAURU, "Nauru");
        map.put(NEPAL, "Nepal");
        map.put(NETHERLANDS, "Netherlands");
        map.put(NETHERLANDS_ANTILLES, "Netherlands Antilles");
        map.put(NEVIS, "Nevis");
        map.put(NEW_CALEDONIA, "New Caledonia");
        map.put(NEW_ZEALAND, "New Zealand");
        map.put(NICARAGUA, "Nicaragua");
        map.put(NIGER, "Niger");
        map.put(NIGERIA, "Nigeria");
        map.put(NIUE, "Niue");
        map.put(NORFOLK_ISLAND, "Norfolk Island");
        map.put(NORWAY, "Norway");
        map.put(OMAN, "Oman");
        map.put(PAKISTAN, "Pakistan");
        map.put(PALAU, "Palau");
        map.put(PANAMA, "Panama");
        map.put(PAPUA_NEW_GUINEA, "Papua New Guinea");
        map.put(PARAQUAY, "Paraguay");
        map.put(PERU, "Peru");
        map.put(PHILIPPINES, "Philippines");
        map.put(POLAND, "Poland");
        map.put(PORTUGAL, "Portugal");
        map.put(PUERTO_RICO, "Puerto Rico");
        map.put(QATAR, "Qatar");
        map.put(REUNION_ISLAND, "Reunion Island");
        map.put(ROMANIA, "Romania");
        map.put(ROTA_ISLAND, "Rota Island");
        map.put(RUSSIA, "Russia");
        map.put(RWANDA, "Rwanda");
        map.put(SAINT_HELENA, "Saint Helena");
        map.put(SAINT_KITTS, "Saint Kitts");
        map.put(SAINT_KITTS_AND_NEVIS, "Saint Kitts and Nevis");
        map.put(SAINT_LUCIA, "Saint Lucia");
        map.put(SAINT_PIERRE_AND_MIQUELON, "Saint Pierre and Miquelon");
        map.put(SAINT_VINCENT, "Saint Vincent and the Grenadines");
        map.put(SAIPAN_ISLAND, "Saipan Island");
        map.put(SAN_MARINO, "San Marino");
        map.put(SAO_TOME_AND_PRINCIPE, "Sao Tome and Principe");
        map.put(SAUDI_ARABIA, "Saudi Arabia");
        map.put(SCOTLAND, "Scotland");
        map.put(SENEGAL, "Senegal");
        map.put(SEYCHELLES, "Seychelles");
        map.put(SIERRA_LEONE, "Sierra Leone");
        map.put(SINGAPORE, "Singapore");
        map.put(SLOVAKIA, "Slovakia");
        map.put(SLOVENIA, "Slovenia");
        map.put(SOLOMON_ISLANDS, "Solomon Islands");
        map.put(SOMALIA, "Somalia");
        map.put(SOUTH_AFRICA, "South Africa");
        map.put(SPAIN, "Spain");
        map.put(SRI_LANKA, "Sri Lanka");
        map.put(SUDAN, "Sudan");
        map.put(SURINAME, "Suriname");
        map.put(SWAZILAND, "Swaziland");
        map.put(SWEDEN, "Sweden");
        map.put(SWITZERLAND, "Switzerland");
        map.put(SYRIAN_ARAB_REPUBLIC, "Syrian Arab Republic");
        map.put(TAIWAN, "Taiwan");
        map.put(TAJIKISTAN, "Tajikistan");
        map.put(TANZANIA, "Tanzania");
        map.put(THAILAND, "Thailand");
        map.put(TINIAN_ISLAND, "Tinian Island");
        map.put(TOGO, "Togo");
        map.put(TOKELAU, "Tokelau");
        map.put(TONGA, "Tonga");
        map.put(TRINIDAD_AND_TOBAGO, "Trinidad and Tobago");
        map.put(TUNISIA, "Tunisia");
        map.put(TURKEY, "Turkey");
        map.put(TURKMENISTAN, "Turkmenistan");
        map.put(TURKS_AND_CAICOS_ISLANDS, "Turks and Caicos Islands");
        map.put(TUVALU, "Tuvalu");
        map.put(UGANDA, "Uganda");
        map.put(UKRAIN, "Ukraine");
        map.put(UNITED_ARAB_EMIRATES, "United Arab Emirates");
        map.put(UNITED_KINGDOM, "United Kingdom");
        map.put(URUGUAY, "Uruguay");
        map.put(USA, "USA");
        map.put(UZBEKISTAN, "Uzbekistan");
        map.put(VANUATU, "Vanuatu");
        map.put(VATICAN_CITY, "Vatican City");
        map.put(VENEZUELA, "Venezuela");
        map.put(VIETNAM, "Vietnam");
        map.put(VIRGIN_ISLANDS, "Virgin Islands allCountries.put(USA)");
        map.put(WALES, "Wales");
        map.put(WALLIS_AND_FUTUNA_ISLANDS, "Wallis and Futuna Islands");
        map.put(WESTERN_SAMOA, "Western Samoa");
        map.put(YEMEN, "Yemen");
        map.put(YUGOSLAVIA, "Yugoslavia");
        map.put(YUGOSLAVIA_SERBIA, "Yugoslavia - Serbia");
        map.put(YUGOSLAVIA_MONTENEGRO, "Yugoslavia - Montenegro");
        map.put(ZAMBIA, "Zambia");
        map.put(ZIMBABWE, "Zimbabwe");
    }

    private int country;


    public MetaCountryConstants(int country) {
        this.country = country;
    }

    public int getCountry() {
        return country;
    }

    public String toString() {
        if (map.containsKey(getCountry()))
            return (String) map.get(getCountry());
        else
            return "";
    }

    public static HashMap getCountriesMap() {
        return map;
    }

    public static String[] getAllCountries() {
        List countries = new ArrayList();
        countries.addAll(map.values());
        Collections.sort(countries);

        return (String[]) countries.toArray(new String[countries.size()]);
    }
}
